package game.players.states;

import java.util.Timer;

import utils.tasks.ExpireTask;
import game.Goal3;
import game.players.SoccerPlayer;

import com.uqbar.vainilla.DeltaState;

public abstract class ShootingPlayer extends WithBall {
	
	protected Timer timer;
	
	protected static final int SPEED = Goal3.SHOOT_SPEED;

	public ShootingPlayer(final SoccerPlayer player) {
		super(player);
		
		this.setTimer(new Timer());
		this.getTimer().schedule(new ExpireTask<ShootingPlayer>(this) {

			@Override
			public void run() {
				this.getCallBackClass().executeShoot();
			}
		}, 600);
	}
	
	protected abstract void executeShoot();

	@Override
	public void update(DeltaState deltaState) {
		// No aplica
	}

	
	
	
	
	
	public Timer getTimer() {
		return timer;
	}

	public void setTimer(Timer timer) {
		this.timer = timer;
	}
	
}
